1. Field of the Invention
Embodiments of the disclosure relate in general to the field of computers and similar technologies, and in particular to software utilized in this field. Still more particularly, it relates to the management of software product information in a z/OS environment.
2. Description of the Related Art
Mainframe computers continue to be used for processing large amounts of data, such as census information, industry and consumer statistics, and financial transactions. Current mainframe computers are not so much defined by their processing speed as by the redundancy of their internal design, extensive throughput capabilities, and backward compatibility with older software. One example of an operating system for mainframes is z/OS®, created by IBM®.
In a z/OS environment, software is contained within load libraries as load modules. The software products that are installed within a z/OS environment, and the respective usage of those products, are determined by scanning the contents of these libraries and the files they contain. In large z/OS environments, such scanning can take hours, if not days. The scanned load libraries and load modules, which are stored on one or more direct access storage devices (DASD), are then compared against a knowledge base (KB) of information associated with known products. The KB, which may be global (GKB) or local (LKB), contains various module attributes, such as module size and CSECT compile dates, which are used to determine the version and release information associated with each of the scanned products.
It is a common requirement for z/OS software auditing tools, such as Tivoli® License Compliance Manager for z/OS, to be able to capture product tag information (IBM, Tivoli, and z/OS are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both). This can be done by reading load modules and searching for the required product tag information. However, implementing hard-coded tag file names is not always a viable approach, such as when merging multiple target libraries into the same run-time library. When this happens, tag information may be lost or corrupted during the merge process. In view of the foregoing, it will be apparent that there is a need for an improved approach to product identification in a z/OS environment.